package com.kevin.Code.DP;

/**
 * @author Vinlee Xiao
 * @Classname PalindromicSubstrings
 * @Description Leetcode 647 回文子串 中心拓展法 难度 中等 完全没啥思路
 * @Date 2021/10/5 16:17
 * @Version 1.0
 */
public class PalindromicSubstrings {

    /**
     * 同时做一类专题 容易陷入到固定思维之中
     * 同
     *
     * @param s
     * @return
     */
    public int countSubstrings(String s) {

        int len = s.length();

        if (len == 1) {
            return 1;
        }

        int res = 0;
        //一共可能产生2*n-1个回文中心
        for (int i = 0; i < 2 * len - 1; i++) {

            int left = i / 2;
            int right = i / 2 + i % 2;
            while (left >= 0 && right < len && s.charAt(left) == s.charAt(right)) {

                res++;
                left--;
                right++;

            }
        }

        return res;
    }

    public static void main(String[] args) {
        PalindromicSubstrings palindromicSubstrings = new PalindromicSubstrings();

        int i = palindromicSubstrings.countSubstrings("abc");
        System.out.println(i);
    }
}
